package com.evasion.servicios;

import java.util.Date;
import java.util.List;

import javax.ejb.Local;

import com.evasion.persistence.entidades.DatosGenerale;

@Local
public interface ServicioAdministracion {
	/**
	 * Registrar empresa
	 * @param empresa
	 * @return
	 */
	DatosGenerale registrarEmpresa(DatosGenerale empresa);
	/**
	 * Clasifica por el metodo regresion logistica
	 * @param empresa
	 * @return
	 */
	
	DatosGenerale clasificarEmpresa(DatosGenerale empresa);
	
	
	
	/**
	 * Actuliazar empresa 
	 * @param empresa
	 * @return
	 */
	DatosGenerale actualizarEmpresa(DatosGenerale empresa);
	
	/**
	 * Obtener todas la empresas registradas en el sistema
	 * @return
	 */
	List<DatosGenerale> getTodasEmpresas(Date fechaInicio, Date fechaFin);
	/**
	 * Obtener empresas que pueda coincidir con el cliente
	 * @param nombreCliente
	 * @return
	 */
	List<DatosGenerale> buscarEmpresasPorCliente(String nombreCliente, Date fechaInicio, Date fechaFin);
	
	/**
	 * Obtener empresasr que pertenecen a una region
	 * @param region
	 * @return
	 */
	List<DatosGenerale> buscarEmpresasPorRegion(String region, Date fechaInicio, Date fechaFin);
	
	/**
	 * Obtener empresas que evaden o no evaden fiscalmente
	 * @param estadoEvasion
	 * @return
	 */
	List<DatosGenerale> buscarEmpresasPorEvasion(String estadoEvasion, Date fechaInicio, Date fechaFin);
	
	/**
	 * Obtine una empresa por Id
	 * @param buscarEmpresa
	 * @return
	 */
	DatosGenerale obtenerEmpresaPorId(Integer idEmpresa);
		
	
}



